<template>
    <div class="home-recommond">
        <h1>官方歌单</h1>
        <div class="wrapper" ref="wrapper">
            <!-- 滚动所需要的容器 -->
            <ul class="content" ref="content">
                <li v-for="(item,index) in listData" :key="index" @click="selectItem(item)">
                    <div class="cover">
                        <van-image :src="item.cover" radius="1rem" />
                        <span>{{item.listen_num | numFilter(1)}}万</span>
                    </div>
                    <span>{{item.title}}</span>
                </li>
            </ul>
        </div>
    </div>
</template>

<script>
    import { betterScrollHorizontal } from "../../common/betterScroll.js";
    export default {
        data() {
            return {
                listData: []
            }
        },
        /* 一个vue实例被生成后会调用created函数
        一般可以在此函数中调用ajax获取页面 */
        created() {
            this.getSongListData()
        },
        methods: {
            //获取推荐歌单数据
            getSongListData() {
                this.$request('get', '/recommend/playlist/u').then(res => {
                    console.log(res)
                    if (res.result == 100) {
                        this.listData = res.data.list;
                    }
                    // 异步数据的一些处理
                    betterScrollHorizontal(
                        this,
                        this.$refs.wrapper,
                        this.$refs.content,
                        this.listData.length,
                        10
                    );
                });
            },
            selectItem(item) {
                const id = item.content_id;
                // console.log(id)
                //1.编程式导航，字符串路径的方式
                this.$router.push(`/songlist/${id}`);
                // 2.编程式导航，带有路径对象的方式
                // this.$router.push({ path: `/songlist/${id}`});
                // 3.编程式导航，命名路由的方式 并加上参数，让路由建立url
                // this.$router.push({
                //     name: "songlist",
                //     params: {
                //         id: id
                //     }
                // });
            }
        },
        // filters: {
        //     numFilter(value, num) {
        //         return parseFloat(value / 10000).toFixed(num)
        //     }
        // }

    };
</script>

<style scoped>
    .cover>span {
        position: absolute;
        right: 0.2rem;
        bottom: 0.3rem;
        background-color: #a6a0a0;
        color: white;
        font-size: 14px;
        border-radius: 1rem;
        width: 5rem;
        display: inline-block;
    }

    .cover {
        position: relative;
    }

    .wrapper {
        width: 100%;
        overflow: hidden;
    }

    ul.content li {
        /* li默认是块级元素，修改为行内元素，当时要具备块级元素的特证 */
        width: 10rem;
        display: inline-block;

        vertical-align: top;

    }

    ul.content li * {
        margin: 0.1rem;
    }

    ul.content li>span {
        font-size: 0.8rem;
        color: #54493b
    }
</style>